
/**
 * 截取字符 多余字符不显示  调用方法 |textLengthSet:true:19:''
 */
app.filter('textLengthSet', function() {
	return function (value, wordwise, max, tail) {
		if (!value) return '';

		max = parseInt(max, 10);
		if (!max) return value;
		if (value.length <= max) return value;

		value = value.substr(0, max);

		/*	 去空格
		 if (wordwise) {
		 var lastspace = value.lastIndexOf(' ');
		 if (lastspace != -1) {
		 value = value.substr(0, lastspace);
		 }
		 console.log(lastspace)

		 }*/

		return value + (tail || '');//''可以换成其它文字
	};

});

app.filter('LanguageConversionFilter', function() {
	
	var IsDiscount = {'A' : '是' ,'B':'否'}; //允许折扣
	var LabCheckState = {'A' : '正常' ,'B':'停用'}; //状态
	var DState = {'A' : '正常' ,'B':'禁用'}; //用户状态
	var TplState = {'A' : '正常' ,'B':'停用'};// 模板状态
	var SystemSign = {'A' : '总中心' ,'B':'分中心主账号','C':'分中心子账号'}; //所属系统
	var IsDefault = {'A' : '是' ,'B':'否'}; //是否默认
	var ProblemType = {'A' : '时间' ,'B':'数字','C':'单选框','D':'复选框','F':'输入框'}; //是否默认
	
	var RegisteredState = {'A' : '未取号' ,'B':'已取号','C':'已取消','D':'已退号','E':'已接诊','F':'未取号过期','G':'已取号过期'}; //挂号状态
	var RegisteredType = {'A' : '预约' ,'B':'转诊','C':'挂号'}; //挂号类型
	var JobTitle = {'A' : '专家医师' ,'B':'主任医师','C':'普通医师'}; //门诊类型
	var Shift = {'A' : '上午' ,'B':'下午'};//班次
	var Sex = {'A' : '男' ,'B':'女', 'C':'不详'};//性别
	var SRegisteredType = {'A' : '专家门诊' ,'B':'主任门诊','C':'普通门诊'}; //门诊类型
	var RRecordInfoState = {'A' : '转诊提交' ,'B':'转诊撤销','C':'转诊同意','D':'转诊拒绝','E':'转诊完成'};//转诊状态
	var AcceptsState = {'A' : '已接诊' ,'B':'接诊完成'};//接诊状态
	var CheckState =  {'A' : '待检查' ,'B':'检查中', 'C':'检查完成'};//检查状态
	var RemoteCState = {'A' : '未确认' ,'B':'已取消','C':'已同意','D':'已拒绝','E':'已完成'}; //会诊状态
	var State = {'A' : '待治疗' ,'B':'治疗中','C':'治疗完成'};//治疗状态
	var OrderState = {'A' : '订单提交' ,'B':'订单确认','C':'订单拒绝','D' : '订单发货' ,'E':'订单取消','F':'订单完成'};//订单状态
	var WorkState = {'A' : '工单已提交' ,'B':'工单已确认','C':'已取消','D' : '已完结' };//工单状态
	var ProblemType = {'A' : '类型一' ,'B':'类型二'};// 报修问题类型,  待定
	var QProblemType = {'A' : '时间' ,'B':'数字','C':'单选框','D':'复选框','E':'输入框'};// 问卷问题类型
	var TreatmentState= {'A' : '待治疗' ,'B':'治疗中','C':'已完成'};// 治疗状态
	var PMaritalStatus = {'A' : '已婚' ,'B':'未婚'};//婚姻状况 A:已婚 B:未婚
	
	var StrKeyVal = {
		'IsDiscount' : IsDiscount,
		'LabCheckState' : LabCheckState,
		'DState' : DState,
		'TplState':TplState,
		'SystemSign':SystemSign,
		'IsDefault':IsDefault,
		'ProblemType':ProblemType,
		'RegisteredState':RegisteredState,
		'RegisteredType':RegisteredType,
		'SRegisteredType':SRegisteredType,
		'JobTitle':JobTitle,
		'Shift':Shift,
		'Sex':Sex,
		'RRecordInfoState':RRecordInfoState,
		'AcceptsState':AcceptsState,
		'CheckState':CheckState,
		'RemoteCState':RemoteCState,
		'State':State,
		'OrderState':OrderState,
		'WorkState':WorkState,
		'ProblemType':ProblemType,
		'QProblemType':QProblemType,
		'TreatmentState':TreatmentState,
		'PMaritalStatus':PMaritalStatus
	};
	
	return function(Str,StrName){
		for(var obj in StrKeyVal){
			if(obj == StrName){
				var keyObj = StrKeyVal[obj];
				for(var kObj in keyObj){
					if(kObj == Str){
						return keyObj[kObj];
					}
				}
			}
		}
		
		return Str;
	}
});


app.filter('CheckFilter', function($sce) {
	return function(str,id,message,ListStr,mod){
		for(var i=0;i<ListStr.length;i++){
			if(ListStr[i].LimitSeq == str){
				return $sce.trustAsHtml("<input type='checkbox' value="+str+" name='"+id+"'  id='"+id+"' class='i-grey-square' ng-model='"+mod+"."+id+"'checked> "+message);
			}
		}
		
		return $sce.trustAsHtml("<input type='checkbox' value="+str+" name='"+id+"'  id='"+id+"' class='i-grey-square'  ng-model='"+mod+"."+id+"'>"+message);
	}
});